Computer systems generally use mass storage devices to store and retrieve data for processing by the computer system. Certain high-end computer systems require very large data capacity. Large storage capacity disk drives are typically stand-alone units, e.g. disk drive enclosures or automated data storage libraries, and require some type of communication link to transfer data back and forth between the computer and the mass storage drive. One common communication protocol is known as Fibre Channel (FC), which is an established standard as per ANSI X3.230-1994. Fibre channel offers a number of advantages for disk topology and storage systems. Fibre Channel is a high speed serial data transfer architecture for transmitting data at rates of 1-2 giga-bits per second (Gbps) and higher. Fibre Channel offers point-to-point, switched, and loop interfaces. A common Fibre Channel standard is Fibre Channel Arbitrated Loop (FC-AL), which is designed for mass storage devices and other peripheral devices that require very high bandwidth. FC-AL supports full-duplex data transfer and uses optical fiber or coaxial cable as the physical medium to connect devices.
FC-AL uses a loop topology, wherein a message or token is placed on the loop by a source device and routed to a destination device as specified an address in the message. The message can contain control instruction and data, which are transferred around the loop between source and destination devices. FC-AL is a well-established, efficient, and flexible communication protocol. However, as with many communication links, FC-AL is subject to hardware failures. If the loop breaks, then the message may not be received. In addition, it may be difficult to locate the Fibre Channel disconnection or break in the loop. One solution is to use a dual-loop implementation. If one loop goes down, then the other loop should be available. Unfortunately, many manufacturers choose to put both FC loops on the same integrated circuit (IC). If the IC fails, then both loops may go down. Additionally, a single device or node, e.g., disk drive, can be connected to both loops whereby a single failure can render both loops inoperable.
Another implementation of Fibre Channel is known as switched FC-AL, in which every device, e.g., disk drive, is connected to a switching node which is in the center of a star configuration. Hardware failures are much easier to detect and handle with the switched FC-AL, because every point of failure can be identified. The system can determine which disk drives cannot communicate.
As a further feature, some switched FC-ALs use cascaded switches connected to trunking links. There are two or more links between the trunk and each disk drive. The cascaded switches allow multiple operations to occur at a time between the trunk and the disk drive, one operation for each link. The cascaded switches increase the bandwidth of data transfer by factor of the number of links.
Due to the high cost associated with switched FC-AL, it is common for users to daisy chain multiple disk drives off one or more FC loops. FIG. 1 illustrates two links between trunk 12 and disk drive 14. FC loop 16 connects from a first controller in trunk 12 to disk drive 14, and FC loop 18 connects from a second controller in trunk 12 to disk drive 14. Additional disk drives 20, 22, and 24 are daisy-chained from disk drive 14 for economies of scale within each FC loop. Because of the daisy-chaining configuration, if disk drive 14 fails, disk drives 20-24 are also taken out of service. Even though FC loops 16 and 18 from the controllers of trunk 12 are operational, a failure of disk drive 14 disables communication with disk drives 20-24. A failure of any one drive in the daisy chain disables all disk drives downstream from the failed drive, even though the downstream disk drives are otherwise operational.
What is needed is a communication topology which does not unnecessarily disable communication with down-stream disk drives.